﻿//SList.h
#include <stdio.h>
#include <stdlib.h>

typedef int SLDataType;

//动态顺序表
typedef struct SeqList
{
	SLDataType* a;	//指针
	int size;		//有效数据个数
	int capacity;	//容量
}SL;

//打印
void SLPrint(SL* ps);
//初始化
void SLInit(SL* ps);
//销毁
void SLDestory(SL* ps);

//头插和尾插
void SLPushFront(SL* ps, SLDataType x);
void SLPushBack(SL* ps, SLDataType x);

//头删和尾删
void SLPopFront(SL* ps);
void SLPopBack(SL* ps);

//指定位置之前和之后插入
void SLPushInsertFront(SL* ps, int pos, SLDataType x);
void SLPushInsertBack(SL* ps, int pos, SLDataType x);

//删除指定位置
void SLErase(SL* ps, int pos);

//查找
int SLFind(SL* ps, SLDataType x);

//修改
void SLChange(SL* ps, int pos, SLDataType x);